﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Data.SqlClient;

namespace quanlyktx.quanlysinhvien
{
    public partial class frmlop : DevComponents.DotNetBar.Office2007Form 
    {
        public frmlop()
        {
            InitializeComponent();
        }
        ketnoi kn = new ketnoi();
        DataTable dt = new DataTable();
        SqlDataAdapter da = new SqlDataAdapter();
        private void btthoat_Click(object sender, EventArgs e)
        {
            this.Close();
        }

        private void btthem_Click(object sender, EventArgs e)
        {
            btsua.Enabled = false;
            btxoa.Enabled = false;
            if (btthem.Text == "Thêm")
            {
                SqlConnection cn = kn.taokn();
                cn.Open();

                SqlCommand cmd = new SqlCommand("maloptutang", cn);
                cmd.CommandType = CommandType.StoredProcedure;
                SqlDataReader dr = cmd.ExecuteReader();
                if (dr.Read())
                {
                    txtmalop.Text = dr[0].ToString();
                }
                txttenlop.Text = "";
                btthem.Text = "Cập nhật";
            }
            else
            {
                if (txttenlop.Text == "")
                {
                    MessageBox.Show("dữ liệu ko dược để trống", "lỗi", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                }
                else
                {
                    SqlConnection cn = kn.taokn();
                    cn.Open();
                    SqlCommand cmd = new SqlCommand("lop_Insert", cn);
                    cmd.CommandType = CommandType.StoredProcedure;
                    cmd.Parameters.Add("@malop", SqlDbType.NVarChar).Value = txtmalop.Text;
                    cmd.Parameters.Add("@tenlop", SqlDbType.NVarChar).Value = txttenlop.Text;
                    cmd.Parameters.Add("@makhoa", SqlDbType.NVarChar ).Value = cbkhoa.SelectedValue;
                    cmd.ExecuteNonQuery();
                    cmd.Dispose();
                    frmlop_Load(sender, e);
                    MessageBox.Show("bạn đã thêm thành công", "thông báo");
                    btthem.Text = "Thêm";
                    btsua.Enabled = true;
                    btxoa.Enabled = true;
                    txtmalop.Text = "";
                    txttenlop.Text = "";
                }
            }
        }

        private void btsua_Click(object sender, EventArgs e)
        {
            btxoa.Enabled = false;
            btthem.Enabled = false;
            if (btsua.Text == "Sửa")
            {
                laydltext();
                btsua.Text = "Lưu";
            }
            else
            {
                if (txttenlop.Text == "")
                {
                    MessageBox.Show("dữ liệu ko dược để trống", "lỗi", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                }
                else
                {
                    SqlConnection cn = kn.taokn();
                    cn.Open();
                    SqlCommand cmd = new SqlCommand("lop_Update", cn);
                    cmd.CommandType = CommandType.StoredProcedure;
                    cmd.Parameters.Add("@malop", SqlDbType.NVarChar ).Value = txtmalop.Text;
                    cmd.Parameters.Add("@tenlop", SqlDbType.NVarChar).Value = txttenlop.Text;
                    cmd.Parameters.Add("@makhoa", SqlDbType.NVarChar ).Value = cbkhoa.SelectedValue;
                    cmd.ExecuteNonQuery();
                    cmd.Dispose();
                    MessageBox.Show("bạn đã sửa thành công", "thông báo");
                    btsua.Text = "Sửa";
                    btthem.Enabled = true;
                    btxoa.Enabled = true;
                    txtmalop.Text = "";
                    txttenlop.Text = "";
                }
            }
        }

        private void btxoa_Click(object sender, EventArgs e)
        {
            laydltext();
            SqlConnection cn = kn.taokn();
            cn.Open();
            SqlCommand cmd = new SqlCommand("lop_Delete", cn);
            if (MessageBox.Show("bạn có thực sự muốn xóa đối tượng:" + txttenlop .Text + "này ", "thông báo", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
            {
                cmd.CommandType = CommandType.StoredProcedure;
                cmd.Parameters.Add("@malop", SqlDbType.NVarChar ).Value = txtmalop .Text;
                cmd.ExecuteNonQuery();
                cmd.Dispose();
                frmlop_Load(sender, e);
                MessageBox.Show("bạn đã xóa thành công");

            }
            txtmalop.Text = "";
            txttenlop.Text = "";
        }

        private void laykhoa()
        {
            SqlConnection cn = kn.taokn();
            cn.Open();
            SqlCommand cmd = new SqlCommand("khoa_SelectAll", cn);
            cmd.CommandType = CommandType.StoredProcedure;           
            da.SelectCommand = cmd;
            da.Fill(dt);
            cbkhoa.DataSource = dt; 
            cbkhoa.ValueMember = "makhoa";
            cbkhoa.DisplayMember = "tenkhoa";
          
        }
        private void laydltext()
        {
            laykhoa();
            txtmalop.DataBindings.Clear();
            txtmalop.DataBindings.Add("Text", dglop.DataSource, "malop");
            txttenlop.DataBindings.Clear();
            txttenlop.DataBindings.Add("Text", dglop.DataSource, "tenlop");
            cbkhoa.DataBindings.Clear();
            cbkhoa.DataBindings.Add("Text", dglop.DataSource, "makhoa");
        }
        private void frmlop_Load(object sender, EventArgs e)
        { 
            laykhoa();
            string sql = "lop_SelectAll";
            dglop.DataSource = kn.taobang(sql);
            
           
        }
    }
}
